Methods and systems using a multi-platform targeted advertising system to select advertisements within a target geographic area

ABSTRACT

Techniques are generally described that relate to a method and system for selecting an advertisement for a subscriber of a multi-platform service operating over a transmission medium. An advertisement computer presents advertisements to the subscriber over a platform included in the multiplatform service. Each of the advertisements is associated with a geographic location. The advertisement computer may receive positive responses to the presentment of the plurality of advertisements and define a target geographic area. A plurality of local advertisement responses from the positive responses are selected by the advertisement computer. Each local advertisement response is associated with a location inside the defined target geographic area. The advertisement computer defines a positive response area based on the plurality of local advertisement responses and selects a first new advertisement. The new advertisement is associated with a location within the target geographic area and outside of the positive response area.

CROSS REFERENCE TO RELATED APPLICATION

This application is related to co-pending U.S. patent application Ser.No. 12/575,927, filed Oct. 8, 2009, entitled Methods and Systems forverifying Advertisements in a Multi-Platform Targeted AdvertisingSystem; U.S. patent application Ser. No. 12/575,963, filed Oct. 8, 2009,entitled Methods and Systems for Generating Advertisement Triggers in aMulti-Platform Targeted Advertising System; and U.S. patent applicationSer. No. 12/575,973, filed Oct. 8, 2009, entitled Methods and Systemsfor Generating Subscriber Usage Profiles in a Multi-Platform TargetedAdvertising System; the entire disclosures of which are incorporatedherein by reference.

BRIEF DESCRIPTION OF THE DRAWINGS

The following detailed description will be better understood when readin conjunction with the appended drawings, in which there is shown oneor more of the multiple embodiments of the present disclosure. It shouldbe understood, however, that the various embodiments of the presentdisclosure are not limited to the precise arrangements andinstrumentalities shown in the drawings.

In the Drawings:

FIG. 1 is a system diagram of a multi-platform targeted advertisingsystem according to one embodiment of the present disclosure;

FIG. 2 is a system diagram of a multi-platform subscriber behaviormonitor system according to one embodiment of the present disclosure;

FIG. 3 is a class diagram of a group of classes utilized by a subscriberbehavior monitor system according to one embodiment of the presentdisclosure;

FIG. 4 is a sequence diagram illustrating an exemplary process ofcreating a subscriber profile based on a subscriber's use of an Internetplatform and a telephone platform;

FIG. 5 is a sequence diagram illustrating an exemplary process ofcreating a household profile based on a household's use of an Internetplatform and a telephone platform;

FIG. 6 is a sequence diagram illustrating an exemplary process ofassigning a household to a market segment based on the household'sInternet platform usage and telephone platform usage;

FIG. 7 illustrates an exemplary method of selecting advertisements for asubscriber based on the subscriber's past use of a multiplatform system;

FIG. 8 provides an exemplary system diagram of an AdvertisementSelection Component according to one embodiment of the presentdisclosure;

FIG. 9 is a sequence diagram illustrating an exemplary process ofselecting and verifying an advertisement for a subscriber of amulti-platform service;

FIG. 10 provides an exemplary system diagram of an AdvertisementVerification Component according to one embodiment of the presentdisclosure;

FIG. 11 is a block of a computer system for realization of themulti-platform targeted advertising system of FIG. 1; and

FIG. 12 is a block of a computer system for realization of themulti-platform targeted advertising system of FIG. 1.

DETAILED DESCRIPTION

Certain terminology is used herein for convenience only and is not to betaken as a limitation on the embodiments of the present disclosure. Inthe drawings, the same reference letters are employed for designatingthe same elements throughout the several figures.

Unified Modeling Language (“UML”) can be used to model and/or describemethods and systems and provide the basis for better understanding theirfunctionality and internal operation as well as describing interfaceswith external components, systems and people using standardizednotation. When used herein, UML diagrams including, but not limited to,use case diagrams, class diagrams and activity diagrams, are meant toserve as an aid in describing the embodiments of the present disclosure,but do not constrain implementation thereof to any particular hardwareor software embodiments.

The present disclosure relates to multi-platform communication systems.As used herein, the term “platform” refers to the hardware architectureand associated software framework required to offer a communicationservice over a transmission medium. For example, a multi-platform systemoften referred to as “Triple Play” includes three platforms: an Internetplatform, a television platform, and a telephone platform, enablingdelivery of a bundle of services, including Internet access, televisionconnectivity and telephone connectivity over the same medium. Examplesof items included in a platform include, without limitation, a router, amodem, computer architecture, an operating system, runtime libraries,and a graphical user interface. For example, a telephone platform in amulti-platform system may include a telephone, a Voice over InternetProtocol (VoIP) router, and associated software. It should be noted thatthe multi-platform systems of the present disclosure encompassmulti-platform systems which may include any number of platforms greaterthan one.

The multi-platform systems of the present disclosure are each associatedwith one or more subscribers. As used herein, the term subscriber refersto any user of or viewer in a multi-platform system or a group of suchpersons. Thus, there may be multiple subscribers in a household orcommunity or an entire household may be treated as a single subscriber.Each subscriber may be associated with one or more devices. Devices mayalso be shared among subscribers. It should be noted that that a useronly needs to utilize one platform in the multi-platform system to beconsidered a subscriber. For example, a user may be a subscriber to abundle of communication services (such as Triple Play) even if theperson only utilizes the telephone platform.

As used herein, a “session” refers to a time period during which asubscriber uses a platform in the multi-platform system. Note that asubscriber may be engaging in multiple sessions simultaneously. Forexample, a subscriber who surfs the Internet while listening totelevision for an hour has engaged in a one-hour session on both theInternet platform and the television platform. A subscriber's usagepattern may be described by a group of sessions. Thus, for example, if asubscriber surfs the Internet for one hour each day for a month, thesubscriber may be characterized as having a daily Internet platformusage of one hour.

FIG. 1 illustrates an exemplary system 10 that tracks subscriber accessto a Triple Play system. A Subscriber Behavior Monitor (SBM) 100monitors subscriber usage of Internet service, telephone service, andtelevision service. The SBM 100 is able to monitor this usage because ofits placement as an intermediary between subscriber devices 112, 114,116 and the Internet 102, PSTN 104, and the television distributionsource 106. Thus, for example if the user makes a request for a filelocated on the Internet 102, the request must, at a minimum, pass thoughthe SBM 100 on route to its destination.

Continuing with reference to FIG. 1, the subscriber utilizes multipleaccess devices 112, 114, 116 to access Internet, telephone, andtelevision service. Each access device 112, 114, 116 connects with theSBM 100 over a network 110. The network 110 may be any network or systemgenerally known in the art, including the Internet, an intranet, a localarea network (LAN), a wide area network (WAN), a metropolitan areanetwork (MAN), a direct connection or series of connections, a cabletelevision infrastructure, a cellular telephone network or any othernetwork, transmission channel or medium capable of facilitatingcommunication between the devices, modules and other components of theSBM 100, as well as between access devices 112, 114, and 116 and the SBM100. The network may be wired, wireless or a combination thereof. Wiredconnections may be implemented using Ethernet, Universal Serial Bus(USB), RJ-11 or any other wired connection generally known in the art.Wireless connections may be implemented using wifi, wimax, bluetooth,infrared, cellular networks, satellite or any other wireless connectionmethodology generally known in the art. The network maybe implemented ina client-server, token-ring, peer-to-peer manner or any other networktopology known in the art. Additionally, several networks may work aloneor in communication with each other to facilitate communication in thenetwork 110. Various networking standards may be employed for allowingeach access device 112, 114, 116 and the SBM 100 to communicate with thenetwork 110, such as EDGE, 3G and/or 802.11.

The SBM 100 tracks platform usage by the devices 112, 114, 116. Thetracked information is used to select one or more advertisements from adatabase 108 connected to the SBM 100. In addition, the system 10 ofFIG. 1 includes three other databases that interact with the SBM 100:the Geographic Information Database 1110, the Demographic InformationDatabase 1140, and the Advertisement Opportunity Database 1160. As willbe explained below, each of the databases 1110, 1140, 1160 provide theSBM 100 with information to permit tasks such as subscriber profiling,market segmentation, and advertisement opportunity detection. The maincomponent of this system, the SBM 100, is also described in more detailin the remainder of this disclosure.

In FIG. 2, one embodiment 20 of the SBM 100 is illustrated. The SBM 100in this embodiment is configured to monitor access to a Triple Playsystem. One skilled in the art would understand other configurations arepossible to support the triple-play system or another multi-platformsystem.

Each platform is associated with a platform monitoring component 202,204, 206, which monitors the subscriber usage of a specific platformover one or more sessions. Thus, for example, the Internet PlatformMonitor 202 will monitor and gather information during each Internetusage session. Throughout this disclosure, these platforms are referredto either individually or collectively as the “platform monitors” 315.

FIG. 3 provides a UML class diagram illustrating various classesassociated with each Platform Monitor Component 202, 204, 206. Theseclasses show one potential implementation of the functionalityassociated with the Platform Monitor Components 202, 204, 206. Oneskilled in the art would understand that other implementations arepossible. Also note that, although FIG. 3 suggests an object-orienteddesign of the system, the Platform Monitor Components 202, 204, 206 maybe implemented using other design techniques.

In FIG. 3, an object diagram illustrating one embodiment 30 of the SBMis illustrated. Objects derived from the PlatformMonitor class 704 areassigned the task of monitoring a specific platform. EachPlatformMonitor object is associated with one object derived from theAccessPattern class 708 and one object derived from the Content class712. Session information gathered by a Platform Monitor object isdistributed to each of these associated objects for further processing.The Platform Monitor class 704 also provides an interface for othercomponents of the SBM 100 to access monitored data. For example, theCorrelation Component 220 contacts each platform monitor to retrieverecorded and derived session data.

The AccessPattern class 708 tracks and analyzes the habits that thesubscriber exhibits while interacting with one or more platforms. TheAccessPattern class 708 may be used directly by a PlatformMonitorobject. In addition, as shown in FIG. 3, the AccessPattern class 708 mayserve as a parent class for one or more platform specific child classes702, 706, 718. These child classes provide more specificity in the usageinformation recorded during each access. For example, an object derivedfrom the PhoneAccessPattern class 718 may record information including,without limitation, the start and end time of the telephone call, theduration of the call, the location where the phone access was made,whether the access resulted from an incoming or outgoing phone call,whether the access was from a computer or traditional phone device,whether a phone book was employed during the access, whether voice mailwas used during the access, and whether the access was for a conferencecall.

The information stored in an AccessPattern object is based onobservations of the subscriber's behaviors. For example, a subscribermay only access certain content on a particular day and at a particulartime. Information may also be derived from the manner that thesubscriber interacts with the multiplatform system. In one embodiment,this includes gestures and interactions that the subscriber makes tointeract with each platform. For example, if the device is associatedwith an accelerometer, the device's orientation and movement may betracked by an AccessPattern object. This information may allow the SBMto accurately profile a user and provide advertisements to the user. Ifthe SBM detects that the subscriber is very active in using the device,it may select a game-type advertisement that comprises an interactivegame that responds to high rates of activity.

An object derived from the AccessPattern class 708 is associated withone or more objects derived from the AccessDevice class 716. Theseobjects describe the device that a subscriber uses to access aparticular platform. An access device is defined as any device includedin the multi-platform system. For example, appropriate devices for theInternet platform include, without limitation, a personal data assistant(PDA), a smart phone, a media player, a portable gaming device, aset-top box, a gaming box, a desktop computer, and a notebook computer.In should be noted that an access device may be used to access multipleservices. For example, a smart phone may enable the subscriber to accessboth the Internet service and the telephone service.

The AccessDevice 716 class may include, but is not limited to, severalvariables which describe the hardware and firmware associated with anaccess device. For example, with reference to the implementationillustrated in FIG. 3, the deviceType provides a description of thedevice type (e.g., smart phone). Other variables may provide, withoutlimitation, addressing information, accelerometer data, displaycapabilities, networking functionality, available memory, and keypaddesign.

In one embodiment, a device location variable in each AccessDeviceobject stores the current location of the access device. This locationmay be determined using any technique known in the art. Examples ofappropriate techniques include, without limitation, cell towertriangulation, GPS recognition, and RFID tracking. This information willallow the system to accurately correlate platform usage with asubscriber's location. For example, a subscriber may use the Internetplatform to access certain websites while traveling to work on acommuter train. A network variable inside the AccessDevice class 307provides more specificity to indicate how the subscriber accessescontent when in a particular location (e.g., via free WiFi offered onthe commuter train). By intelligently monitoring this information, thesystem could more accurately profile subscriber platform accessbehavior.

Location information stored in an object derived from the AccessDeviceclass 716 will also enhance the delivery of advertisements tosubscribers. In one embodiment, the SBM 100 can distinguish between aplurality of household members based on platform and access device usagehabits. Thus, for example, if there are multiple computers in ahousehold, the SBM 100 can select a computer for delivery of particularadvertisement based on the usage of each computer in the household.Moreover, by correlating location data from multiple platforms, the SBMcan provide a more accurate subscriber usage profile to enhanceadvertisement selection and delivery. For example, the system maydetermine that a computer is located near a television, each device isaccessed at approximately the same time each day, and the contentaccessed on each device is similar in type. Based on this information,the system may determine that the same user is operating each device andan advertisement may be targeted to the user utilizing the Internetplatform, the television platform, or both platforms in combination.

Other variables in the AccessDevice class 716 record the time periodsduring which the device is used by the subscriber. A start time and endtime variable indicate the time of day that the subscriber begins andends using the device, respectfully. Time may be stored in any formatknown in the art and the variable may further include an indication ofthe day of week that the subscriber uses the device. This may be useful,for example, to indicate that the subscriber only uses a certain deviceon weekdays. In addition a variable in the AccessDevice class 716 storesthe number of times that a device is used to access a particularplatform. This variable may, for example, help the SBM 100 to select apreferred device for advertisement delivery in the event that multipledelivery options are available.

Each PlatformMonitor object is also associated with an object derivedfrom the Content class 712. The Content class 712 records informationabout the type of content accessed over a particular platform. As withthe AccessPattern class 708, the Content class 712 may be used directlyor it may also serve as a parent class for one or more child classes. InFIG. 3, each platform in the Triple Play system is associated with aspecific and unique child class 702, 706, 718. For example, the childclass associated with the television platform 702 includes variablesdescribing, without limitation, the channels purchased by thesubscriber, the channels watched by the subscriber in the past, thechannels currently being watched by the subscriber, and the number ofinteractions between the subscriber and a television platform accessdevice (e.g., a set-top box). The class may further include informationdetailing the frequency of use for services such as digital videorecording (DVR), video-on-demand (VOD), and pay-per-view.

In one embodiment, variables in the Content class 712 record the generalcategory of the content (e.g., sports), keywords associated with thecontent, the format of the content (e.g., a flash movie), and theservice type connected with the content. Other variables may be includedto provide more specificity of the type of content accessed by thesubscriber. For example, a user of the Internet platform may routinelyrequest download of a news site and then request download of a sportswebsite. The Content class 712 may record the page file type (e.g.,HTML), its general category (e.g., sports), one or more subcategories(e.g., basketball), and keywords associated with page. Using thisinformation, subscriber content access patterns may be more accuratelydetermined.

Using the information gathered by the Platform Monitors, 202, 204, 206,a Correlation Component 220 develops cross-platform correlations toprovide an indication of how access patterns and content types arerelated across platforms. For example, there may be a strong positivecorrelation between the number of Internet accesses to a sports relatedweb page and the number of phone calls to a fast food restaurant. Thiscorrelation may be refined even further by considering the number ofsports-related television programs viewed by a subscriber. In addition,factors such as the number of accesses at a particular time orgeographic access location may be taken into account. It should be notedthat the Correlation Component 220 may also find negative correlations.A negative correlation may be useful, for example, to select an optimaladvertisement for a particular subscriber by eliminating thoseadvertisements that are likely to be ineffective.

To fully take advantage of the benefits of the multi-platform system,the Correlation Component 220 correlates access pattern, content types,and other related information across each platform in the system. Suchinformation will enable the system to provide a better indication of howthe subscriber utilizes the multiple platforms in conjunction with oneanother. For example, a subscriber may routinely surf the Internet whilelistening to television in the background. In this situation, it may bedesirable to present the subscriber with an advertisement over thetelevision that promotes a website.

The Subscriber Characterization Component 210 characterizes a subscriberbased on usage of the multi-platform system. The characterization mayinclude any information that describes the subscriber. In oneembodiment, for example, the system generates a demographic descriptionof the subscriber, describing a probable age, income, gender and otherdemographic indicators. The resulting characterization includesprobabilistic determinations of a subscriber's service preferences. Forexample, with regard to the television platform, the SubscriberCharacterization Component 210 may determine what other programming orproducts the subscriber will be interested in viewing.

In one embodiment, the characterization generated by the SubscriberCharacterization Component 210 takes two forms. First, a subscriber maybe characterized based on the type of content that is accessed over themulti-platform system. For example, a user who watches many sportingevents on television may be characterized as a sports fan. Thus, thisfirst type of characterization describes “what” content the subscriberhas accessed. This may be contrasted with the second type of subscribercharacterization: access characterization. With access characterization,“how” the subscriber is accessing content is described. To build on theprevious example, subscriber habits may indicate that the subscriberonly watches sporting events on Sundays during the afternoon. Byutilizing both content characterization and access characterization,advertising selection, presentment, and verification techniques may beenhanced. For example, the characterizations may be used to place thesubscriber in a particular market segment or to target a specificadvertisement to the subscriber. Both content type characterization andaccess characterization can be enhanced by collecting information frommultiple platforms. For example, in a Triple Play system, a subscribermay be characterized based on the type of websites that are browsed onthe Internet platform, the types of businesses called on the telephoneplatform, and the type of programs watched on the television platform.By considering more information about the subscriber habits, theaccuracy of advertisement selection, presentment, and verification willbe increased.

In one embodiment, the Subscriber Characterization Component 210generates characterizations at the household level. Thesecharacterizations provide an aggregate representation of the platformusage habits of each member of a particular household. This informationmay be used to select advertisements at the household level (e.g.,direct mail). The household characterization may also be utilized toprovide a “default” characterization for the multi-platform system thatmay be employed when the system can not detect which household member isusing the platform. For example, a household characterization mayindicate that a household of four persons collectively have a particularpolitical viewpoint. Thus, an advertisement may still be selected basedon platform usage even if the individual subscriber-specific usagepatterns are not available. The Subscriber Characterization Component210 may also develop community-based characterizations to describe theplatform usage patterns exhibited by a group of households. Thisgranularity of the characterization may also aid in selecting theoptimal form of advertising. For example, a neighborhood-basedcharacterization may be relevant in selecting content for a billboardlocated along a highway near the neighborhood.

FIG. 4 illustrates an exemplary embodiment 40 for creating a subscriberprofile. In this embodiment, the SBM interacts with two subscriberplatform computers: a subscriber modem 305 and a subscriber set-top box310. The subscriber modem 305 provides Internet and telephone usage tothe subscriber. In addition, this modem 305 records Internet usage dataand telephone usage data. The modem 305 may record this usage datalocally if storage is available internal to the subscriber modem device305. Alternatively, the subscriber modem 305 may be coupled to externalstorage such as a hard drive on a desktop computer to permit storage ofusage data. The subscriber set-top box 310 provides television usage tothe subscriber and records any subscriber usage of the televisionplatform 206. The platform monitors 315 retrieve Internet and telephoneusage data from the subscriber modem 305. The monitors 315 also retrievetelevision usage data from the subscriber set-top box 310. All of thecollected usage data is then sent to the Subscriber CharacterizationComponent 210 which detects access patterns in the usage data andcreates subscriber profiles based on those access patterns.

FIG. 5 provides an illustration on an embodiment 50 where a householdprofile is generated using data contained in the demographic informationdatabase 1140. As with the embodiment 40 illustrated in FIG. 4, thePlatform Monitors 315 communicate with the subscriber modem 305 andsubscriber set-top box 310 to retrieve usage data. Rather than analyzingthe data for access patterns as in FIG. 4, however, in FIG. 5 theCharacterization Component 210 analyzes the data to detect one or morecontent types contained in the data. Based on these content types, theCharacterization Component 210 retrieves demographic data from thedemographic database through an interface 400 associated with thedatabase. Based on this demographic data, the Characterization Component210 detects household usage patterns. The household usage patterns arethen used to create a household profile.

In some embodiments, the Characterization Component 210 uses marketsegmentation techniques to place subscribers into market segments. Thesemarket segments can later be used by the Characterization Component, oranother component of the SBM 100 to, for example, select content forpresentation to the subscriber, provide more accurate subscriberprofiles, or to create group advertising opportunities for subscribers.It should be noted that the Characterization Component 210 may utilizeknown market segments (e.g., “baby-boomer”) or it may create complexmarket segments based on existing subscriber information and use of themulti-platform system. For example, the Characterization Component 210may create a market segment comprising baby-boomers that live in thePhiladelphia area, have large families, visit sports related websites,and watch reality television programming.

The Characterization Component 210 may segment subscribers based on oneor more variables that may be known or derived from existing subscriberinformation. In one embodiment, for example, geographic variables areused to segment a subscriber. These may comprise, for example, theregion in which the subscriber lives (including the continent, country,state, and neighborhood), the size of the population in that region, thepopulation density in the region, and the weather patterns common to theregion. In another embodiment, demographic segmentation techniques areused and the Characterization Component 210 variables such as, forexample, age, gender, height, weight, family size, generation (e.g.,baby boomer), income, occupation, education, ethnicity, nationality, andreligion.

The Characterization Component 210 may also segment subscribers based onthe subscriber's use of the multi-platform system. In one embodiment,the Characterization Component 210 uses Psychographic Segmentation tosegment subscribers based on personality, values, attitudes, interests,or lifestyle. In another embodiment, the Characterization Component usesBehavioristic Segmentation techniques to place the subscriber into amarket segment based on the subscriber's knowledge of, and behaviortowards, a particular product. Variables used during this form ofsegmentation may include, without limitation, the benefits sought from aparticular product, the usage rate of that product, how loyal thesubscriber is to the provider of that product, and how ready the buyeris to make another purchase of that product. These variables may begathered, for example, by monitoring how a subscriber reacts to thepresentation of a series of advertisements for a particular product.

FIG. 6 presents an exemplary embodiment of how a household can beassigned to a market segment based on advertisement responses. TheAdvertisement Selection Component retrieves a subscriber householdprofile from the Subscriber Characterization Component 210. Based onthis profile, the Advertisement Selection Component 240 generates anadvertisement and presents it over the Internet platform to thesubscriber via the Subscriber Modem 300. Next, the Platform Monitors 315retrieve the Internet usage data and send it to the CharacterizationComponent 320. Based on the usage data, the Characterization Componentretrieves demographic information from the Demographic Database via aninterface 400 associated with the database. Then, the CharacterizationComponent 320 identifies one or more market segments based on the usagedata and the demographic data. Finally, the Characterization Component320 assigns the household to the identified market segment or marketsegments.

A Trend Prediction Component 230 predicts trends in the subscriber's useof the multi-platform system. Data is gathered from the subscriber's useof each platform. For example, in one embodiment, the Trend PredictionComponent 230 forecasts future subscriber behavior of the Internetplatform including, without limitation, the next URL that will beaccessed over the Internet platform, the next channel that will beaccessed over the television platform, when the user will change thechannel on the television platform, and how long the subscriber willview and use each platform. Using the predictions generated by the TrendPrediction Component 230, the Advertisement Selection Component 240 canpropose content to offer to the subscriber. In one exemplary embodiment,a prediction is used to recommend content over an electronic programguide (EPG) used on the television platform. In this embodiment, thesystem also recommends video on demand content based on the subscriber'saccess of video content over the Internet platform. The Trend PredictionComponent 230 may also operate at the community or household level,clustering and analyzing a subscriber's behavior based on the behaviorof other subscribers of the multi-platform system.

An Advertisement Selection Component 240 selects one or moreadvertisements from the Advertisement database 108 based on thesubscriber characterization derived by the Subscriber Characterizationcomponent 210. An advertisement may be selected directly based on thecharacterization, or the subscriber may first be placed in a marketsegment based on characterization information. The AdvertisementSelection Component 240 uses the market segment to provide a demographicrepresentation of the subscriber which can be used to categorize thesubscriber for advertising purposes. For example, the subscriber's usagehabits on the multi-platform system may indicate the subscriber is verywealthy. This information could then be used to select the subscriberadvertisements for expensive cars. Subscribers may also be clustered into market segments at the household or community level.

The Advertisement Selection Component 240 may choose any advertisementsuitable for delivery over the targeted platform. For example, on theInternet platform, potential advertisements include, without limitation,banner advertisements, rich media advertisements, interstitialadvertisements, keyword search advertisements, and pop-upadvertisements. Each platform may have one or advertising types uniqueto that platform and there may be advertisement types that are utilizedon multiple platforms.

The SBM 100 may also track usage patterns to determine the optimal timeto present the subscriber with the advertisement. For example, if theSBM determines that the subscriber's household usually orders pizza onThursday nights, corresponding advertisements may be presented onWednesday and Thursday. The SBM 100 may also select advertisements fromdifferent vendors to avoid subscriber saturation.

In some embodiments, the Advertisement Selection Component 240 usestriggering on individual platforms or combinations of platforms toidentify advertising opportunities. In an exemplary embodiment, the actof a subscriber dialing a particular number triggers an advertisingopportunity. The term “advertising opportunity” as used herein refers tosubscriber behavior that may potentially be associated withadvertisements. For example, when the subscriber dials a pizza parlor, apizza advertisement opportunity may be triggered. The SBM 100 may thenrespond to this trigger by delivering pizza advertisements on one ormore of the available platforms in the multi-platform system. Theresponse to the trigger may be immediate or it may respond after adelay. In addition, when triggers are used on a combination of two ormore platforms, the order of execution of the triggers may besignificant. Thus, in one embodiment, a first trigger associated with anadvertising opportunity is configured to activate upon the detection ofa first subscriber usage pattern on a first platform. Then, once thatfirst subscriber usage pattern is detected, a second trigger is createdand associated with the same advertisement opportunity. The secondtrigger activates upon the detection of a second subscriber usagepattern on a second platform. Finally, once the second trigger isactivated, the advertisement opportunity may be offered to one or moreadvertisers. It should be noted that this example may be extended to anynumber of triggers, thus creating chains of detection and activation onthe multi-platform system. Also, triggers may be customized based oninformation from their predecessor trigger. For example, a first triggermay activate when the subscriber clicks on a banner advertisement on aweb page accessed through the Internet platform. The content of thebanner advertisement may then be used to create a second trigger to beactivated on the telephone platform. Moreover, the advertisementopportunity selected at the end of the chain may be uniquely associatedwith the chain. That is, a particular advertisement opportunity may onlybe selected if a specific set of triggers are activated in a particularsequence.

The Advertisement Selection Component 240 may also use triggers as thebasis for notifying advertisers of opportunities and conducting auctionsor sales based on those opportunities. Opportunities may be communicatedwith the advertiser through, for example, an advertisement opportunitymessage transmitted via email. The opportunities may be characterized bythe triggers activated, the particular market segments describing thesubscriber's platform usage habits, or a demographic profile associatedwith one or more subscribers. In addition, in some embodiments, eachopportunity may be associated with a cost value which indicates theprice associated with presenting an advertisement based on theopportunity. The advertisements may be priced, for example, based on acorrelation between the subscriber characterization and the content ofthe advertisement. The Advertisement Selection Component 240 may alsouse behavioral triggers to identify market segments and to createopportunities for the creation of new market segments. For example,television and Internet triggers may be used to identify viewers ofcertain sports programs that also access a particular news web site.Those users may form a useful and potentially large market segment, andthe cable operator may be able to find a buyer for advertisements forthat market segment.

In some embodiments, the information gathered by the AdvertisementSelection Component 240 chooses advertisements for businesses orservices based on the user's location or the location associated withcontent accessed by the subscriber using the multi-platform system.Location information may be gathered by one or more components of theSBM 100 as the subscriber uses the multi-platform system. Once one ormore subscriber usage areas are computed based on the location, they maybe used to enhance advertisement selection. In some embodiments, theAdvertisement Selection Component 240 chooses advertisements related toa targeted subscriber usage area. For example, if the SBM 100 discoversthat the subscriber frequently uses the multi-platform system on atrain, an advertisement for a coffee at a business located in the trainstation may be presented. Also, because the subscriber usage areaprovides an indication of locations where the subscriber is comfortablevisiting, selection of advertisement may be localized to optimizedelivery to the subscriber and increase the probability of positiveresponse to the advertisement. For example, a subscriber may use thetelephone service to order food from restaurants in a particularneighborhood. In this case, the SBM 100 may provide the subscriber withan advertisement for a restaurant in that neighborhood but that thesubscriber has not ordered from in the past. The SBM 100 may alsoconsider additional information about the subscriber's use of themulti-platform system in order to select a particular type ofrestaurant. In addition, the SBM 100 may provide advertisements forother non-restaurant businesses located in the same neighborhood.

The Advertisement Selection Component 240 may also determine subscriberusage areas to select advertisements for businesses and services locatedoutside any then-existing usage area. For example, if a subscriberalways patronizes businesses located no more than one mile from his orher home, an advertisement for a business located one and one half milesfrom the home may be selected. This process may be repeated iteratively,continually influencing the subscriber to venture outside his or her“comfort zone” to shop at new businesses.

FIG. 7 illustrates an exemplary method of selecting advertisements forbusinesses located outside of a subscriber's past usage area. In thisembodiment, a target geographic area 840 is defined by the AdvertisementSelection Component 240. This target geographic area may be defined as,for example, a group of street names, a town or city name, or a group oflatitude and longitude values. In the embodiment 70 illustrated in FIG.7, the target geographic area 840 is defined as a circle with a midpointand a radius. The midpoint may be defined using any location associatedwith the user. In FIG. 7, for example, the subscriber's residence 810 isused as the midpoint.

Continuing with reference to FIG. 7, once the target geographic area 840has been set, the subscriber's use of a multi-platform system ismonitored over time to create a subscriber access record. Thissubscriber access record comprises information regarding one or moresubscriber accesses to the multi-platform system. This informationincludes at least a location value associated with each access. Itshould be noted, however, that the subscriber access record may alsoinclude information such as the content types accessed by the subscriberor indicators of the behavioral habits exhibited by the subscriber whenaccessing the multi-platform system. In FIG. 7, black circles 820 areused to denote a location associated with an item in the subscriberaccess record. Based on the location values contained in the subscriberaccess record, the SBM 100 can define a geographic area associated withthe subscriber's past usage 830 of the multiplatform area. This area isreferred to herein as the subscriber's “past usage area.” The past usagearea 830 may contain all of the location values included in thesubscriber access record or the Advertisement Selection Component 240may select a subset of the location values that are considered “local”to a particular location, for example the subscriber's residence 810.

Once the target geographic area 840 and the past usage area 830 havebeen selected, the Advertisement Selection Component 240 can select anadvertisement for a location where the subscriber has not had a pastassociation, as indicated by the subscriber access record. Morespecifically, the Advertisement Selection Component 240 can select anadvertisement associated with a location within the target geographicarea 840 but outside the past usage area 830. This advertisement maythen be presented to the user. It should be noted that, if thesubscriber responds positively to the advertisement, the past usage area840 may be adjusted accordingly. Thus, if the SBM 100 receives apositive response to the advertisement a redefined past usage area maybe created. Then, the Advertisement Selection Component 240 may select anew advertisement that is associated with a location within the targetgeographic area 840 and outside of the redefined past usage area Thisprocess may be repeated iteratively, further extending the subscriber'spast usage area. Once the past usage area reaches the target geographicarea, the target geographic area may be extended to continue theprocess.

FIG. 8 provides one possible embodiment 80 of the AdvertisementSelection Component 240. An advertisement selection module 1100interacts with the advertisement database and a demographic informationdatabase 1140 to select advertisements for one or more subscribers. Theadvertisement database 108 stores one or more advertisements that may bedelivered to the user thorough the multi-platform service. Informationstored in the demographic information database 1140 may include, forexample, the name, age, sex, location, and income of the targetsubscriber.

Continuing with respect to FIG. 8, the advertisement selection module1100 communicates with a map generation module 1120. The map generationmodule 1120 is configured to communicate with the geographic informationdatabase 1110 to create subscriber maps based on information provided bythe advertisement selection module 1100 or other components of the SBM100. Further, the advertisement selection module 1100 may send andreceive information from the data aggregation component 208 via link1130.

FIG. 8 also illustrates the functionality used by the AdvertisementSelection Component 240 to support triggers. A trigger generation module1150 in the component 240 creates at least one platform-specific triggerassociated with an advertisement opportunity. For example, the triggergeneration module 1150 may create a television platform-based triggerthat is associated with an opportunity to advertise to a particulardemographic profile. Complex triggers may be developed using informationstored in the demographic information database 1140 and the geographicinformation database 1110. An advertisement opportunity database 1160stores predefined advertisement opportunities and metadata informationthat describes those opportunities. The metadata information in thiscontext includes any data that may be used to describe the opportunitiesincluding, for example, advertisers associated with a particularopportunity, past use and success of the opportunity, and a set oftriggers associated with a particular opportunity. For example, thedatabase 1160 may identify a particular advertisement opportunity and,in the metadata, provide a sequence of triggers to be activated beforethe opportunity is deemed active.

The SBM's 100 Advertisement Verification Component 250 evaluates thesubscriber's receipt and response to the advertisement. Verification canbe performed using cross platform monitoring. For example, phone recordscan indicate access of a particular number, series of numbers, or phoneusage patterns. As such, access of those numbers may provide anindication of the success of an advertising campaign. As an example, acalling card may be advertised on television over a number of weeks. Thesubscriber may purchase that card (e.g., through the Internet platform)and the subscriber's use of the card on the telephone platform will beverified when the subscriber calls a particular number to activate thecard. Similarly, by correlating Internet browsing history withtelevision advertisement placement, the system may determine whether thesubscriber reacted to the television advertisement by visiting aspecific site or issuing a search query using keywords related to thetelevision advertisement.

In one embodiment, the Advertisement Verification Component 250 willevaluate the success of a particular advertisement or advertisingcampaign by considering the degree to which the targeted subscriber'sbehavior was modified. For example, consider an advertisement for aparticular news website. Following presentment of the advertisement tothe subscriber, the Advertisement Verification Component 250 maydetermine that the subscriber began accessing the site during eachInternet session. Moreover, over later sessions, the Component 250 mayascertain that the subscriber always accesses the advertised news sitefirst, before accessing any other site via the Internet platform. Inthis case, the advertisement may be considered highly effective.

In another exemplary embodiment, the Advertisement VerificationComponent 250 uses cross-platform correlations to enhance the process ofevaluating the success of a particular advertisement or advertisingcampaign. Working with other components of the SBM 100, an advertisementis delivered over one of the platforms included in the multi-platformservice. This advertisement may be targeted to an individual subscriber,a member of a particular household, or to a particular community. Next,the Advertisement Verification Component 250 selects monitoring criteriabased on the presented advertisement. In some embodiments, themonitoring criteria are selected based on the operationalcharacteristics of a particular platform. For example, monitoringcriteria associated with the Internet platform may include, withoutlimitation, the type of files requested, how frequently files arerequested, and the inbound link used by the subscriber to access aparticular file.

Once the Advertisement Verification Component 250 establishes themonitoring criteria, it may examine the subscriber's use of themultiplatform system to determine if the subscriber exhibits anybehavior commensurate with the criteria. If the AdvertisementVerification Component 250 detects such behavior, it may record theadvertisement as “successful” in a subscriber access event database1230. The advertisement is considered “successful” because thesubscriber reacted to the targeted advertisement with the responsedesired by the advertiser. In addition, the Advertisement VerificationComponent 250 may report the behavior to another component of the SBM100, to a computer system external to the SBM, to a human operator ofthe SBM 100, or another computer system.

FIG. 9 presents an exemplary embodiment 90 of the interaction of theAdvertisement Verification Component 250 with other components in theSBM 100 and with a subscriber modem 305. The Advertisement SelectionComponent 240 retrieves a subscriber household profile from theSubscriber Characterization Component 210. Based on this profile, theAdvertisement Selection Computer 240 generates an advertisement andpresents it over the Internet platform to the subscriber via theSubscriber Modem 305. Next, the Platform Monitors 315 retrievesubscriber usage data from the Subscriber Modem 305 and send it to theCharacterization Component 210. The subscriber usage data may then beretrieved by the Advertisement Verification Component 250. Based on theusage data, the Advertisement Verification Component 250 detects anadvertisement response and sends an indicator of that response to theCharacterization Component 210. Based on the response indicator, theCharacterization Component 210 may determine which household member isassociated with the response. Further, the Characterization Component210 updates a household profile based on the indicator value and anyhousehold member information derived from the indicator.

FIG. 10 provides an illustration of one embodiment 1000 of theAdvertisement Verification Component 250. The term verification, as usedherein, refers to the receipt of subscriber data in response to thepresentment of an advertisement to the subscriber. An advertisementverification module 1200 is configured to verify presentment of theadvertisement based on communication with a monitoring criteriaselection module 1220 and the advertisement monitoring module 1210. Themonitoring criteria selection module 1220 is configured to generate oneor more monitoring criteria for verifying presentment of anadvertisement on the multi-platform system. The advertisement monitoringmodule 1210 is configured to individually monitor subscriber activitywith respect to the advertisement. This module 1210 further communicateswith a subscriber access event database 1230 which stores dataassociated with subscriber activity with respect to presentedadvertisements. Thus, as subscriber data related to the presentment ofadvertisements is gathered, it is stored in the database and possiblysent to the advertisement verification module for further processing.Although this may add some redundancy in some embodiments, maintaining adatabase of historical data allows the Monitoring Criteria SelectionModule 1220 to develop enhanced criteria for monitoring anadvertisement. In addition, the database 1230 may also be used by theadvertisement verification module 1200 to develop enhanced verificationtechniques.

The embodiment 101 depicted in FIG. 10 also shows modules used tosupport trigger-based advertisements. A trigger detection module 1250communicates with the advertisement verification module 1200 to receive,through port 1240, aggregated data describing the subscriber use of themulti-platform. The trigger detection module 1250 is configured toanalyze the aggregated data and detect the activation ofplatform-specific and cross-platform advertisement opportunities. Anadvertiser communication module 1260 presents these advertisementopportunities to advertisers. The advertiser communication module 1260may use any communication technique known in the art. In one exemplaryembodiment, an advertisement communication message is created by theadvertiser communication module 1260 using standard email protocols.Then, the message is sent by the communication module 1260, via email,to one or more potential advertisers.

FIG. 11 is a block diagram illustrating a computer system 1000 forrealization of a computer-implemented apparatus that may form all or aportion of one or more implementation(s) or embodiment(s) of the presentdisclosure. The computer system 1000 includes a computer 1060, akeyboard 1042, a mouse 1044, and a display device (e.g., computermonitor) 1040 through which the computer 1060 may receive input/provideoutput, for example to a user, operator or another computer or system(not shown). Input/output devices such as the display device 1040,keyboard 1042, the mouse 1044, and other means or mechanisms (e.g.,touch screen interface) through which interaction with the computersystem 1000 may occur are generally known in the art, and a detaileddiscussion thereof is omitted here for convenience only and should notbe considered limiting. The computer 1060 includes a network port 1020for connecting the computer to an internal or external network, such as,for example the network 110. The computer 1060 is connected to a storagedevice 1050 that includes program instructions 1052 for softwareapplication(s) that provides the logical functions of thecomputer-implemented apparatus and/or method(s) of the presentdisclosure. The storage device 1050 also contains a database 1054 forstoring data.

Those skilled in the art will recognize that the program instructions1052 for software applications implementing all or a portion of one ormore embodiment(s) of the present disclosure may be written in aprogramming language such as Java or C++, and that the database 1054 maybe implemented with a database package such as Microsoft Access™ or adatabase management system (DBMS) such as Microsoft SQL Server™Microsoft SQL Server CE™, IBM DB2™, mySQL or postgreSQL.

FIG. 12 is a block diagram illustrating a computer architecture of thesystem 1000 through which the embodiments of the SBM 100, includingcomponents 202, 204, 206, 208, 210, 220, 230, 240, and 250, may beimplemented. A system bus 1002 transports data amongst the CentralProcessing Unit (CPU) 1004, RAM 1006, the Basic Input Output System(BIOS) 1008 and other components. The CPU 1004 may include a cachememory component 1024. The computer system 1000 may include one or moreexternal storage ports 1017 for accessing a hard disk drive (HDD),optical storage drive (e.g., CD-ROM, DVD-ROM, DVD-RW), flash memory,tape device, or other storage device (not shown). The relevant storagedevice(s) are connected through the external storage port 1017 which isconnected to the system bus 1002 via a disk controller 1022. A keyboardand/or pointing device (e.g., mouse, touch pad) (see FIG. 11) can beconnected to the keyboard/mouse port(s) 1012, and other I/O devicescould be connected to additional I/O port(s) 1013, which are connectedto the system bus 1002 through the I/O controller 1005. Additional portsor devices, such as serial ports, parallel ports, firewire adapters, orbiometric devices (not shown), may be utilized through the I/Ocontroller 1010. A display device (see FIG. 11) can be connected to adisplay device port 1014 which is connected to the system bus 1002through the video controller 1015. A network device (not shown),including but not limited to an Ethernet device or other device havingnetworking capability, can be connected to a network port 1020 which isconnected through the network controller 1016 to the system bus 1002.The computer system 1000 may be wirelessly connected to a network devicethat is configured for wireless operation (not shown), including but notlimited to wireless routers, using an antenna 1028 connected to awireless controller 1026 connected to the system bus 1002, where theantenna transmits/receives signals to/from the network device. Thecomputer system 1000 may include one or more USB ports 1023. A USBdevice (not shown), including but not limited to a printer, scanner,keyboard, mouse, digital camera, storage device, PDA, cellular phone,biometric device, webcam, and I/O adapters can be connected to the USBport 1023 which is connected to the system bus 1002 through the USBcontroller 1011. Other devices, such as cellular phones, PDAs, and otherportable devices may also be connected wirelessly via a wireless I/Oantenna 1032 that is connected to a wireless I/O controller 1030.Examples of wireless I/O technologies include, but are not limited to,Bluetooth, Infrared (IR), and Radio-Frequency (RF). Audio devices, suchas microphones, speakers, or headphones may be connected to a sound port1038 that is connected to a sound controller 1034 that is connected tothe system bus 1002. Expansion slots 1018 can include Industry StandardArchitecture (ISA) slots, Peripheral Component Interconnect (PCI)expansion slots, PCI Express expansion slots, Accelerated Graphics Port(AGP) slots or any other slot generally known in the art to allowadditional cards to be placed into the computer system 1000. These slotscan be used to connect network cards, video cards, sound cards, modemsand any other peripheral devices generally used with a computer. Thecomputer system 1000 also includes a source of power (not shown),including but not limited to a power supply connected to an externalsource of power, and/or an internal or external battery. These devicesare generally well-know to those skilled in the art, and a detaileddiscussion thereof is omitted here for convenience only and should notbe considered limiting.

The embodiments of the present disclosure may be implemented with anycombination of hardware and software. If implemented as acomputer-implemented apparatus, the present disclosure is implementedusing means for performing all of the steps and functions describedabove.

The embodiments of the present disclosure can be included in an articleof manufacture (e.g., one or more computer program products) having, forinstance, computer useable or computer readable media. The media hasembodied therein, for instance, computer readable program code means,including computer-executable instructions, for providing andfacilitating the mechanisms of the embodiments of the presentdisclosure. The article of manufacture can be included as part of acomputer system or sold separately.

While specific embodiments have been described in detail in theforegoing detailed description and illustrated in the accompanyingdrawings, it will be appreciated by those skilled in the art thatvarious modifications and alternatives to those details could bedeveloped in light of the overall teachings of the disclosure and thebroad inventive concepts thereof. It is understood, therefore, that thescope of the present disclosure is not limited to the particularexamples and implementations disclosed herein, but is intended to covermodifications within the spirit and scope thereof as defined by theappended claims and any and all equivalents thereof.

The invention claimed is:
 1. A computer-implemented method comprising:(a) receiving, at a central computer, device data delivered by each of aplurality of subscriber devices via a corresponding one of a pluralityof telecommunication platforms, each of the telecommunication platformsforming part of a multi-platform service to which the subscribersubscribes, the subscriber comprising a plurality of subscriber users ofthe multi-platform service; (b) identifying, at the central computer,from the received device data, and storing, for each subscriber device,data identifying (i) the corresponding telecommunication platform, (ii)a location for each subscriber device, (iii) a transmission time for thesubscriber device that is transmitting via the telecommunicationplatform within a predetermined time frame, and (iv) content beingaccessed, wherein two subscriber devices of the two or more subscriberdevices are currently delivering data via distinct telecommunicationplatforms of the plurality of telecommunication platforms; (c)determining, by the central computer, that the location, thetransmission time, and the content being accessed for the two subscriberdevices, via the distinct telecommunication platforms, is currentlysimilar; (d) determining, by the central computer, based on step (c) andstored data regarding the plurality of subscriber users, an identity ofa single current user from the plurality of subscriber users, the singlecurrent user simultaneously using the two subscriber devices via thedistinct telecommunication platforms; (e) selecting an advertisementhaving an advertisement location that is substantially similar to thelocation of the two subscriber devices, the advertisement locationassigned by an advertiser, wherein the selected advertisement is basedon the identity of the single current user determined in step (d); and(f) transmitting, by the central computer, the advertisement to each ofthe two subscriber devices of the single current user via each distincttelecommunication platform for presentation.
 2. The method of claim 1,wherein the advertisement location is excluded from the received data.3. The method of claim 1, wherein the plurality of subscriber devicescomprises at least one subscriber device for each of the plurality oftelecommunication platforms.
 4. The method of claim 1, furthercomprising: defining a target geographic area by the advertiser thatincludes advertiser locations selected by the advertiser; and comparingthe location of the two subscriber devices to the target geographic areato determine which advertisements to present to the subscriber.
 5. Themethod of claim 4, wherein the target geographic area is defined by aplurality of street names.
 6. The method of claim 4, wherein the targetgeographic area is defined by a plurality of latitude and longitudevalues.
 7. The method of claim 1, wherein the received data furtherincludes a plurality of behavioral variables associated with thesubscriber's use of the multi-platform service.
 8. The method of claim7, wherein the selection of the advertisement is based at least in parton the plurality of behavioral variables.
 9. The method of claim 1,wherein the received data further includes a plurality of accessedcontent types.
 10. The method of claim 9, wherein the advertisement iscommensurate with at least one accessed content type included in theplurality of accessed content types.
 11. A system comprising: atelecommunication platform identification component suitable for: (a)receiving device data delivered by each of a plurality of subscriberdevices via a corresponding one of a plurality of telecommunicationplatforms, each of the telecommunication platforms forming part of amulti-platform service to which the subscriber subscribes, thesubscriber comprising a plurality of subscriber users of themulti-platform service; (b) identifying, from the received device data,and storing, for each subscriber device, data identifying (i) thecorresponding telecommunication platform, (ii) a location for eachsubscriber device, (iii) a transmission time for the subscriber devicethat is transmitting via the telecommunication platform within apredetermined time frame, and (iv) content being accessed, wherein twosubscriber devices of the two or more subscriber devices are currentlydelivering data via distinct telecommunication platforms of theplurality of telecommunication platforms; (c) determining that thelocation, the transmission time, and the content being accessed for thetwo subscriber devices, via the distinct telecommunication platforms, iscurrently similar; and (d) determining, based on step (c) and storeddata regarding the plurality of subscriber users, an identity of asingle current user from the plurality of subscriber users, the singlecurrent user simultaneously using the two subscriber devices via thedistinct telecommunication platforms; an advertisement selectioncomponent suitable for: (e) selecting an advertisement having anadvertisement location that is substantially similar to the location ofthe two subscriber devices, the advertisement location assigned by anadvertiser, wherein the selected advertisement is based on the identityof the single current user determined in step (d); and (f) transmittingthe advertisement to each of the two subscriber devices of the singlecurrent user via each distinct telecommunication platform forpresentation, and a processor suitable for executing one or moreinstructions corresponding to the advertisement evaluation component andthe advertisement selection component.
 12. The system of claim 11,wherein the plurality of subscriber devices comprises at least onesubscriber device for each of the plurality of telecommunicationplatforms.